using DataObjects;
using DataSecurity.StandartInterfaces;

namespace DataSecurity.ADO.Oracle
{
    /// <summary>
    /// Oracle specific factory that creates Oracle specific data access objects.
    /// 
    /// GoF Design Pattern: Factory.
    /// </summary>
    public class OracleDaoFactory : IDaoFactory
    {
        /// <summary>
        /// Gets the role in site.
        /// </summary>
        /// <value>
        /// The role in site.
        /// </value>
        /// <exception cref="System.NotImplementedException"></exception>
        public IRoleInSite RoleInSite { get { throw new System.NotImplementedException(); } }
        /// <summary>
        /// Gets the email configuration.
        /// </summary>
        /// <value>
        /// The email configuration.
        /// </value>
        public IEmailConfig EmailConfig { get; private set; }
        /// <summary>
        /// Gets the membership.
        /// </summary>
        /// <value>
        /// The membership.
        /// </value>
        public IMembership Membership { get; private set; }
        /// <summary>
        /// Gets the role.
        /// </summary>
        /// <value>
        /// The role.
        /// </value>
        /// <exception cref="System.NotImplementedException"></exception>
        public IRole Role { get { throw new System.NotImplementedException(); } }
        /// <summary>
        /// Gets the user.
        /// </summary>
        /// <value>
        /// The user.
        /// </value>
        /// <exception cref="System.NotImplementedException"></exception>
        public IUser User { get { throw new System.NotImplementedException(); } }
        /// <summary>
        /// Gets the permission.
        /// </summary>
        /// <value>
        /// The permission.
        /// </value>
        /// <exception cref="System.NotImplementedException"></exception>
        public IPermission Permission { get { throw new System.NotImplementedException(); } }
        /// <summary>
        /// Gets the permission in site.
        /// </summary>
        /// <value>
        /// The permission in site.
        /// </value>
        /// <exception cref="System.NotImplementedException"></exception>
        public IPermissionInSite PermissionInSite { get { throw new System.NotImplementedException(); } }
        /// <summary>
        /// Gets the site.
        /// </summary>
        /// <value>
        /// The site.
        /// </value>
        /// <exception cref="System.NotImplementedException"></exception>
        public ISite Site { get { throw new System.NotImplementedException(); } }
    }
}
